home *** CD-ROM | disk | FTP | other *** search
/ Aminet 1 (Walnut Creek) / Aminet - June 1993 [Walnut Creek].iso / aminet / util / gnu / gnu_oleo_1_2_2.lha / oleo-1.2.2 / init.c < prev    next >
C/C++ Source or Header  |  1993-03-03  |  14KB  |  402 lines

  1. #include "proto.h"
  2. #include "init.h"
  3. #include "global.h"
  4. #include "io-term.h"
  5. /*
  6.  * These commands are run before we are ready to do output.  They
  7.  * should not do any kind of io or cause errors.  If they do, you
  8.  * will experience core dumps.
  9.  */
  10. char *init_cmds[] =
  11. {
  12.   "create-keymap universal",
  13.   "create-keymap help universal",
  14.   "create-keymap mouse universal",
  15.   "",
  16.   "# The navigation keymaps hold cell cursor motion bindings.",
  17.   "",
  18.   "create-keymap navigate universal",
  19.   "create-keymap trolx-navigate universal",
  20.   "create-keymap meta-navigate universal",
  21.   "",
  22.   "create-keymap main navigate",
  23.   "create-keymap trolx trolx-navigate",
  24.   "create-keymap meta meta-navigate",
  25.   "# The digit map is for builing numeric prefix arguments.",
  26.   "create-keymap digit main",
  27.   "",
  28.   "# The edit keymaps are used while editting the input area.",
  29.   "",
  30.   "create-keymap edit universal",
  31.   "create-keymap meta-edit universal",
  32.   "create-keymap trolx-edit universal",
  33.   "",
  34.   "create-keymap ansi universal",
  35.   "",
  36.   "bind-key universal break ^G",
  37.   "bind-key universal mouse ^\\",
  38.   "",
  39.   "# Vectors between keymaps",
  40.   "bind-key navigate trolx-navigate ^X",
  41.   "bind-key navigate meta-navigate ^[",
  42.   "bind-key main digit ^U",
  43.   "bind-key main trolx ^X",
  44.   "bind-key main meta ^[",
  45.   "bind-key main help ^H",
  46.   "bind-key edit trolx-edit ^X",
  47.   "bind-key edit meta-edit ^[",
  48.   "",
  49.   "# Mouse events. ",
  50.   "bind-key mouse mouse-goto 0",
  51.   "bind-key mouse mouse-mark 1",
  52.   "bind-key mouse mouse-mark-and-goto 2",
  53.   "",
  54.   "",
  55.   "# Prefix arguments",
  56.   "bind-key digit digit-0 0",
  57.   "bind-key digit digit-1 1",
  58.   "bind-key digit digit-2 2",
  59.   "bind-key digit digit-3 3",
  60.   "bind-key digit digit-4 4",
  61.   "bind-key digit digit-5 5",
  62.   "bind-key digit digit-6 6",
  63.   "bind-key digit digit-7 7",
  64.   "bind-key digit digit-8 8",
  65.   "bind-key digit digit-9 9",
  66.   "bind-key meta digit-0 0",
  67.   "bind-key meta digit-1 1",
  68.   "bind-key meta digit-2 2",
  69.   "bind-key meta digit-3 3",
  70.   "bind-key meta digit-4 4",
  71.   "bind-key meta digit-5 5",
  72.   "bind-key meta digit-6 6",
  73.   "bind-key meta digit-7 7",
  74.   "bind-key meta digit-8 8",
  75.   "bind-key meta digit-9 9",
  76.   "",
  77.   "# Help commands.",
  78.   "bind-key help describe-key k",
  79.   "bind-key main describe-key ;",
  80.   "bind-key help show-variable v",
  81.   "bind-key help show-options o",
  82.   "bind-key main show-options O",
  83.   "",
  84.   "# Variable commands",
  85.   "bind-key main set-variable v",
  86.   "bind-key main show-variable V",
  87.   "bind-key meta show-all-variables ^V",
  88.   "bind-key help show-all-variables ^V",
  89.   "",
  90.   "#",
  91.   "bind-key main print-region p",
  92.   "bind-key main psprint-region P",
  93.   "bind-key meta start-entering-macro (",
  94.   "bind-key meta stop-entering-macro )",
  95.   "bind-key meta read-commands <",
  96.   "bind-key meta write-keys >",
  97.   "bind-key meta execute-command X",
  98.   "bind-key meta execute-command x",
  99.   "",
  100.   "# File and window commands.",
  101.   "bind-key trolx visit-spreadsheet ^v",
  102.   "bind-key trolx save-spreadsheet ^s",
  103.   "bind-key trolx merge-spreadsheet ^i",
  104.   "bind-key trolx merge-spreadsheet ^m",
  105.   "bind-key trolx write-region-to-file w",
  106.   "bind-key trolx clear-spreadsheet ^?",
  107.   "bind-key trolx quit ^C",
  108.   "",
  109.   "bind-key main visit-spreadsheet r",
  110.   "bind-key main save-spreadsheet w",
  111.   "bind-key main merge-spreadsheet R",
  112.   "bind-key main write-region-to-file W",
  113.   "",
  114.   "bind-key meta redraw-screen ^L",
  115.   "bind-key main quit Q",
  116.   "",
  117.   "bind-key meta close-window C",
  118.   "bind-key meta goto-window G",
  119.   "bind-key meta open-window W",
  120.   "bind-key meta close-window c",
  121.   "bind-key meta goto-window g",
  122.   "bind-key meta open-window w",
  123.   "",
  124.   "bind-key trolx split-window-vertically 2",
  125.   "bind-key trolx split-window-horizontally 5",
  126.   "bind-key trolx delete-other-windows 1",
  127.   "bind-key trolx delete-window 0",
  128.   "bind-key trolx-navigate other-window o",
  129.   "bind-key trolx-edit other-window o",
  130.   "# ",
  131.   "bind-key main recalculate !",
  132.   "bind-key main bind-key :",
  133.   "",
  134.   "# Motion commands.",
  135.   "bind-key navigate left-cell ^B",
  136.   "bind-key navigate right-cell ^F",
  137.   "bind-key navigate down-cell ^N",
  138.   "bind-key navigate up-cell ^P",
  139.   "bind-key navigate recenter-window ^L",
  140.   "",
  141.   "bind-key navigate left-cell h",
  142.   "bind-key navigate down-cell j",
  143.   "bind-key navigate up-cell k",
  144.   "bind-key navigate right-cell l",
  145.   "bind-key navigate downleft-cell b",
  146.   "bind-key navigate downright-cell n",
  147.   "bind-key navigate upleft-cell y",
  148.   "bind-key navigate upright-cell u",
  149.   "",
  150.   "bind-key meta-navigate scan-left b",
  151.   "bind-key meta-navigate scan-down n",
  152.   "bind-key meta-navigate scan-up p",
  153.   "bind-key meta-navigate scan-right f",
  154.   "",
  155.   "bind-key meta-navigate scan-left H",
  156.   "bind-key meta-navigate scan-down J",
  157.   "bind-key meta-navigate scan-up K",
  158.   "bind-key meta-navigate scan-right L",
  159.   "bind-key meta-navigate scan-left h",
  160.   "bind-key meta-navigate scan-down j",
  161.   "bind-key meta-navigate scan-up k",
  162.   "bind-key meta-navigate scan-right l",
  163.   "bind-key meta-navigate upper-left ^Y",
  164.   "bind-key meta-navigate upper-right ^U",
  165.   "bind-key meta-navigate lower-left ^B",
  166.   "bind-key meta-navigate lower-right ^N",
  167.   "",
  168.   "# Ansi motion.",
  169.   "bind-key ansi up-cell A",
  170.   "bind-key ansi down-cell B",
  171.   "bind-key ansi right-cell C",
  172.   "bind-key ansi left-cell D",
  173.   "bind-key meta ansi [",
  174.   "bind-key meta ansi ^[",
  175.   "",
  176.   "# Scrolling commands.",
  177.   "bind-key navigate scroll-down ^V",
  178.   "bind-key navigate scroll-down J",
  179.   "bind-key meta-navigate scroll-up v",
  180.   "bind-key navigate scroll-up K",
  181.   "bind-key trolx-navigate scroll-right >",
  182.   "bind-key navigate scroll-right L",
  183.   "bind-key trolx-navigate scroll-left <",
  184.   "bind-key navigate scroll-left H",
  185.   "bind-key navigate scroll-upright U",
  186.   "bind-key navigate scroll-downleft B",
  187.   "bind-key navigate scroll-downright N",
  188.   "bind-key navigate scroll-upleft Y",
  189.   "bind-key trolx-navigate goto-cell g",
  190.   "bind-key trolx-navigate exchange-point-and-mark ^X",
  191.   "bind-key main goto-cell g",
  192.   "",
  193.   "# Commands for manipulating the mark.",
  194.   "bind-key navigate mark-cell ^@",
  195.   "",
  196.   "# Cell changing commands.",
  197.   "bind-key main enter-text-in-cell  ",
  198.   "bind-key main enter-text-in-cell \"",
  199.   "bind-key main enter-text-in-cell #",
  200.   "bind-key main enter-text-in-cell $",
  201.   "bind-key main enter-text-in-cell (",
  202.   "bind-key main enter-text-in-cell +",
  203.   "bind-key main enter-text-in-cell -",
  204.   "bind-key main enter-text-in-cell .",
  205.   "bind-key main enter-text-in-cell 0",
  206.   "bind-key main enter-text-in-cell 1",
  207.   "bind-key main enter-text-in-cell 2",
  208.   "bind-key main enter-text-in-cell 3",
  209.   "bind-key main enter-text-in-cell 4",
  210.   "bind-key main enter-text-in-cell 5",
  211.   "bind-key main enter-text-in-cell 6",
  212.   "bind-key main enter-text-in-cell 7",
  213.   "bind-key main enter-text-in-cell 8",
  214.   "bind-key main enter-text-in-cell 9",
  215.   "bind-key main enter-text-in-cell @",
  216.   "",
  217.   "bind-key main edit-cell-with-default =",
  218.   "bind-key main edit-value-cell E",
  219.   "bind-key main edit-cell e",
  220.   "",
  221.   "# Moving around cell values.",
  222.   "bind-key main copy-values-in-region C",
  223.   "bind-key main delete-region X",
  224.   "bind-key main delete-cell x",
  225.   "bind-key main copy-region c",
  226.   "bind-key main move-region m",
  227.   "bind-key main insert-row ^O",
  228.   "bind-key main delete-row ^K",
  229.   "bind-key meta insert-col ^O",
  230.   "bind-key meta delete-col ^K",
  231.   "bind-key main sort-region s",
  232.   "",
  233.   "# Formatting commands",
  234.   "bind-key meta set-user-format U",
  235.   "bind-key meta set-user-format u",
  236.   "bind-key main set-defaults d",
  237.   "bind-key main format-region F",
  238.   "bind-key main format-cell f",
  239.   "bind-key main set-option o",
  240.   "",
  241.   "",
  242.   "# Edit commands",
  243.   "bind-key edit beginning-of-line ^A",
  244.   "bind-key edit end-of-line ^E",
  245.   "bind-key edit forward-char ^F",
  246.   "bind-key edit backward-char ^B",
  247.   "bind-key edit delete-char ^D",
  248.   "bind-key edit delete-backward-char ^H",
  249.   "bind-key edit finish-line ^J",
  250.   "bind-key edit kill-line ^K",
  251.   "bind-key edit finish-line ^M",
  252.   "bind-key edit toggle-over-write ^O",
  253.   "bind-key edit delete-to-start ^U",
  254.   "",
  255.   "bind-key edit insert-character  ",
  256.   "bind-key edit insert-character !",
  257.   "bind-key edit insert-character \"",
  258.   "bind-key edit insert-character #",
  259.   "bind-key edit insert-character $",
  260.   "bind-key edit insert-character %",
  261.   "bind-key edit insert-character &",
  262.   "bind-key edit insert-character '",
  263.   "bind-key edit insert-character (",
  264.   "bind-key edit insert-character )",
  265.   "bind-key edit insert-character *",
  266.   "bind-key edit insert-character +",
  267.   "bind-key edit insert-character ,",
  268.   "bind-key edit insert-character -",
  269.   "bind-key edit insert-character .",
  270.   "bind-key edit insert-character /",
  271.   "bind-key edit insert-character 0",
  272.   "bind-key edit insert-character 1",
  273.   "bind-key edit insert-character 2",
  274.   "bind-key edit insert-character 3",
  275.   "bind-key edit insert-character 4",
  276.   "bind-key edit insert-character 5",
  277.   "bind-key edit insert-character 6",
  278.   "bind-key edit insert-character 7",
  279.   "bind-key edit insert-character 8",
  280.   "bind-key edit insert-character 9",
  281.   "bind-key edit insert-character :",
  282.   "bind-key edit insert-character ;",
  283.   "bind-key edit insert-character <",
  284.   "bind-key edit insert-character =",
  285.   "bind-key edit insert-character >",
  286.   "bind-key edit insert-character ?",
  287.   "bind-key edit insert-character @",
  288.   "bind-key edit insert-character A",
  289.   "bind-key edit insert-character B",
  290.   "bind-key edit insert-character C",
  291.   "bind-key edit insert-character D",
  292.   "bind-key edit insert-character E",
  293.   "bind-key edit insert-character F",
  294.   "bind-key edit insert-character G",
  295.   "bind-key edit insert-character H",
  296.   "bind-key edit insert-character I",
  297.   "bind-key edit insert-character J",
  298.   "bind-key edit insert-character K",
  299.   "bind-key edit insert-character L",
  300.   "bind-key edit insert-character M",
  301.   "bind-key edit insert-character N",
  302.   "bind-key edit insert-character O",
  303.   "bind-key edit insert-character P",
  304.   "bind-key edit insert-character Q",
  305.   "bind-key edit insert-character R",
  306.   "bind-key edit insert-character S",
  307.   "bind-key edit insert-character T",
  308.   "bind-key edit insert-character U",
  309.   "bind-key edit insert-character V",
  310.   "bind-key edit insert-character W",
  311.   "bind-key edit insert-character X",
  312.   "bind-key edit insert-character Y",
  313.   "bind-key edit insert-character Z",
  314.   "bind-key edit insert-character [",
  315.   "bind-key edit insert-character \\",
  316.   "bind-key edit insert-character ]",
  317.   "bind-key edit insert-character ^",
  318.   "bind-key edit insert-character _",
  319.   "bind-key edit insert-character `",
  320.   "bind-key edit insert-character a",
  321.   "bind-key edit insert-character b",
  322.   "bind-key edit insert-character c",
  323.   "bind-key edit insert-character d",
  324.   "bind-key edit insert-character e",
  325.   "bind-key edit insert-character f",
  326.   "bind-key edit insert-character g",
  327.   "bind-key edit insert-character h",
  328.   "bind-key edit insert-character i",
  329.   "bind-key edit insert-character j",
  330.   "bind-key edit insert-character k",
  331.   "bind-key edit insert-character l",
  332.   "bind-key edit insert-character m",
  333.   "bind-key edit insert-character n",
  334.   "bind-key edit insert-character o",
  335.   "bind-key edit insert-character p",
  336.   "bind-key edit insert-character q",
  337.   "bind-key edit insert-character r",
  338.   "bind-key edit insert-character s",
  339.   "bind-key edit insert-character t",
  340.   "bind-key edit insert-character u",
  341.   "bind-key edit insert-character v",
  342.   "bind-key edit insert-character w",
  343.   "bind-key edit insert-character x",
  344.   "bind-key edit insert-character y",
  345.   "bind-key edit insert-character z",
  346.   "bind-key edit insert-character {",
  347.   "bind-key edit insert-character |",
  348.   "bind-key edit insert-character }",
  349.   "bind-key edit insert-character ~",
  350.   "",
  351.   "bind-key edit delete-backward-char ^?",
  352.   "bind-key meta-edit insert-abs-ref A",
  353.   "bind-key meta-edit backward-word B",
  354.   "bind-key meta-edit delete-word D",
  355.   "bind-key meta-edit insert-cell-expression E",
  356.   "bind-key meta-edit forward-word F",
  357.   "bind-key meta-edit insert-rel-ref R",
  358.   "bind-key meta-edit insert-cell-value V",
  359.   "bind-key meta-edit insert-abs-ref a",
  360.   "bind-key meta-edit backward-word b",
  361.   "bind-key meta-edit delete-word d",
  362.   "bind-key meta-edit insert-cell-expression e",
  363.   "bind-key meta-edit forward-word f",
  364.   "bind-key meta-edit insert-rel-ref r",
  365.   "bind-key meta-edit insert-cell-value v",
  366.   "bind-key meta-edit backward-delete-word ^?",
  367.   "",
  368.   "# Other init commands:",
  369.   "define-font times *times-medium-r-* Times-Roman",
  370.   "define-font times-italic *times-medium-i-* Times-Italic",
  371.   "define-font times-oblique *times-medium-o-* Times-Italic",
  372.   "define-font times-bold *times-bold-r-* Times-Bold",
  373.   "define-font times-oblique-bold *times-bold-o-* Times-BoldItalic",
  374.   "define-font times-italic-bold *times-bold-i-* Times-BoldItalic",
  375.   "define-font courier *courier-medium-r-* Courier",
  376.   "define-font courier-oblique *courier-medium-o-* Courier-Italic",
  377.   "define-font courier-bold *courier-bold-r-* Courier-Bold",
  378.   "define-font courier-bold-oblique *courier-bold-o-* Courier-BoldItalic",
  379.   "define-font helvetica *helvetica-medium-r-* Helvetica",
  380.   "define-font helvetica-oblique *helvetica-medium-o-* Helvetica-Italic",
  381.   "define-font helvetica-bold *helvetica-bold-r-* Helvetica-Bold",
  382.   "define-font helvetica-bold-oblique *helvetica-bold-o-* Helvetica-BoldItalic",
  383.   "define-font fixed *fixed-medium-r-* Times-Roman",
  384.   "",
  385.   "# my init commands:",
  386.   "set-option a0",
  387.   "set-option file sylk",
  388.   0
  389. };
  390.  
  391. void 
  392. run_init_cmds ()
  393. {
  394.   char **p = init_cmds;
  395.   while (*p)
  396.     {
  397.       char * cmd = strdup (*p++);
  398.       execute_cmd (cmd);
  399.       free (cmd);
  400.     }
  401. }
  402.